MeshProtos

@Generated
class MeshProtos

Types

Link copied to clipboard
Protobuf type meshtastic.ChunkedPayload
Link copied to clipboard
interface ChunkedPayloadOrBuilder : MessageOrBuilder
Link copied to clipboard

Responses to a ChunkedPayload request
Protobuf type meshtastic.ChunkedPayloadResponse
Link copied to clipboard
interface ChunkedPayloadResponseOrBuilder : MessageOrBuilder
Link copied to clipboard

A notification message from the device to the client
To be used for important messages that should to be displayed to the user
in the form of push notifications or validation messages when saving
invalid configuration.
Protobuf type meshtastic.ClientNotification
Link copied to clipboard
interface ClientNotificationOrBuilder : MessageOrBuilder
Link copied to clipboard
class Compressed : GeneratedMessage, MeshProtos.CompressedOrBuilder

Compressed message payload
Protobuf type meshtastic.Compressed
Link copied to clipboard
interface CompressedOrBuilder : MessageOrBuilder
Link copied to clipboard
enum Constants : ProtocolMessageEnum

Shared constants between device and phone
Protobuf enum meshtastic.Constants
Link copied to clipboard
enum CriticalErrorCode : ProtocolMessageEnum

Error codes for critical errors
The device might report these fault codes on the screen.
If you encounter a fault code, please post on the meshtastic.discourse.group
and we'll try to help.
Protobuf enum meshtastic.CriticalErrorCode
Link copied to clipboard
class Data : GeneratedMessage, MeshProtos.DataOrBuilder

(Formerly called SubPacket)
The payload portion fo a packet, this is the actual bytes that are sent
inside a radio packet (because from/to are broken out by the comms library)
Protobuf type meshtastic.Data
Link copied to clipboard
interface DataOrBuilder : MessageOrBuilder
Link copied to clipboard

Device metadata response
Protobuf type meshtastic.DeviceMetadata
Link copied to clipboard
interface DeviceMetadataOrBuilder : MessageOrBuilder
Link copied to clipboard
Protobuf type meshtastic.DuplicatedPublicKey
Link copied to clipboard
interface DuplicatedPublicKeyOrBuilder : MessageOrBuilder
Link copied to clipboard
enum ExcludedModules : ProtocolMessageEnum

Enum for modules excluded from a device's configuration.
Each value represents a ModuleConfigType that can be toggled as excluded
by setting its corresponding bit in the `excluded_modules` bitmask field.
Protobuf enum meshtastic.ExcludedModules
Link copied to clipboard
class FileInfo : GeneratedMessage, MeshProtos.FileInfoOrBuilder

Individual File info for the device
Protobuf type meshtastic.FileInfo
Link copied to clipboard
interface FileInfoOrBuilder : MessageOrBuilder
Link copied to clipboard
enum FirmwareEdition : ProtocolMessageEnum

Enum to indicate to clients whether this firmware is a special firmware build, like an event.
The first 16 values are reserved for non-event special firmwares, like the Smart Citizen use case.
Protobuf enum meshtastic.FirmwareEdition
Link copied to clipboard
class FromRadio : GeneratedMessage, MeshProtos.FromRadioOrBuilder

Packets from the radio to the phone will appear on the fromRadio characteristic.
It will support READ and NOTIFY. When a new packet arrives the device will BLE notify?
It will sit in that descriptor until consumed by the phone,
at which point the next item in the FIFO will be populated.
Protobuf type meshtastic.FromRadio
Link copied to clipboard
interface FromRadioOrBuilder : MessageOrBuilder
Link copied to clipboard
enum HardwareModel : ProtocolMessageEnum

Note: these enum names must EXACTLY match the string used in the device
bin/build-all.sh script.
Because they will be used to find firmware filenames in the android app for OTA updates.
To match the old style filenames, _ is converted to -, p is converted to .
Protobuf enum meshtastic.HardwareModel
Link copied to clipboard
class Heartbeat : GeneratedMessage, MeshProtos.HeartbeatOrBuilder

A heartbeat message is sent to the node from the client to keep the connection alive.
This is currently only needed to keep serial connections alive, but can be used by any PhoneAPI.
Protobuf type meshtastic.Heartbeat
Link copied to clipboard
interface HeartbeatOrBuilder : MessageOrBuilder
Link copied to clipboard

The actual over-the-mesh message doing KeyVerification
Protobuf type meshtastic.KeyVerification
Link copied to clipboard
Protobuf type meshtastic.KeyVerificationFinal
Link copied to clipboard
interface KeyVerificationFinalOrBuilder : MessageOrBuilder
Link copied to clipboard
Protobuf type meshtastic.KeyVerificationNumberInform
Link copied to clipboard
interface KeyVerificationNumberInformOrBuilder : MessageOrBuilder
Link copied to clipboard
Protobuf type meshtastic.KeyVerificationNumberRequest
Link copied to clipboard
interface KeyVerificationNumberRequestOrBuilder : MessageOrBuilder
Link copied to clipboard
interface KeyVerificationOrBuilder : MessageOrBuilder
Link copied to clipboard
class LogRecord : GeneratedMessage, MeshProtos.LogRecordOrBuilder

Debug output from the device.
To minimize the size of records inside the device code, if a time/source/level is not set
on the message it is assumed to be a continuation of the previously sent message.
This allows the device code to use fixed maxlen 64 byte strings for messages,
and then extend as needed by emitting multiple records.
Protobuf type meshtastic.LogRecord
Link copied to clipboard
interface LogRecordOrBuilder : MessageOrBuilder
Link copied to clipboard
Protobuf type meshtastic.LowEntropyKey
Link copied to clipboard
interface LowEntropyKeyOrBuilder : MessageOrBuilder
Link copied to clipboard
class MeshPacket : GeneratedMessage, MeshProtos.MeshPacketOrBuilder

A packet envelope sent/received over the mesh
only payload_variant is sent in the payload portion of the LORA packet.
The other fields are either not sent at all, or sent in the special 16 byte LORA header.
Protobuf type meshtastic.MeshPacket
Link copied to clipboard
interface MeshPacketOrBuilder : MessageOrBuilder
Link copied to clipboard

This message will be proxied over the PhoneAPI for the client to deliver to the MQTT server
Protobuf type meshtastic.MqttClientProxyMessage
Link copied to clipboard
interface MqttClientProxyMessageOrBuilder : MessageOrBuilder
Link copied to clipboard
class MyNodeInfo : GeneratedMessage, MeshProtos.MyNodeInfoOrBuilder

Unique local debugging info for this node
Note: we don't include position or the user info, because that will come in the
Sent to the phone in response to WantNodes.
Protobuf type meshtastic.MyNodeInfo
Link copied to clipboard
interface MyNodeInfoOrBuilder : MessageOrBuilder
Link copied to clipboard
class Neighbor : GeneratedMessage, MeshProtos.NeighborOrBuilder

A single edge in the mesh
Protobuf type meshtastic.Neighbor
Link copied to clipboard

Full info on edges for a single node
Protobuf type meshtastic.NeighborInfo
Link copied to clipboard
interface NeighborInfoOrBuilder : MessageOrBuilder
Link copied to clipboard
interface NeighborOrBuilder : MessageOrBuilder
Link copied to clipboard
class NodeInfo : GeneratedMessage, MeshProtos.NodeInfoOrBuilder

The bluetooth to device link:
Old BTLE protocol docs from TODO, merge in above and make real docs...
use protocol buffers, and NanoPB
messages from device to phone:
POSITION_UPDATE (..., time)
TEXT_RECEIVED(from, text, time)
OPAQUE_RECEIVED(from, payload, time) (for signal messages or other applications)
messages from phone to device:
SET_MYID(id, human readable long, human readable short) (send down the unique ID
string used for this node, a human readable string shown for that id, and a very
short human readable string suitable for oled screen) SEND_OPAQUE(dest, payload)
(for signal messages or other applications) SEND_TEXT(dest, text) Get all
nodes() (returns list of nodes, with full info, last time seen, loc, battery
level etc) SET_CONFIG (switches device to a new set of radio params and
preshared key, drops all existing nodes, force our node to rejoin this new group)
Full information about a node on the mesh
Protobuf type meshtastic.NodeInfo
Link copied to clipboard
interface NodeInfoOrBuilder : MessageOrBuilder
Link copied to clipboard

RemoteHardwarePins associated with a node
Protobuf type meshtastic.NodeRemoteHardwarePin
Link copied to clipboard
interface NodeRemoteHardwarePinOrBuilder : MessageOrBuilder
Link copied to clipboard
class Position : GeneratedMessage, MeshProtos.PositionOrBuilder

A GPS Position
Protobuf type meshtastic.Position
Link copied to clipboard
interface PositionOrBuilder : MessageOrBuilder
Link copied to clipboard
Protobuf type meshtastic.QueueStatus
Link copied to clipboard
interface QueueStatusOrBuilder : MessageOrBuilder
Link copied to clipboard

Wrapper message for broken repeated oneof support
Protobuf type meshtastic.resend_chunks
Link copied to clipboard
interface resend_chunksOrBuilder : MessageOrBuilder
Link copied to clipboard

A message used in a traceroute
Protobuf type meshtastic.RouteDiscovery
Link copied to clipboard
interface RouteDiscoveryOrBuilder : MessageOrBuilder
Link copied to clipboard
class Routing : GeneratedMessage, MeshProtos.RoutingOrBuilder

A Routing control Data packet handled by the routing module
Protobuf type meshtastic.Routing
Link copied to clipboard
interface RoutingOrBuilder : MessageOrBuilder
Link copied to clipboard
class ToRadio : GeneratedMessage, MeshProtos.ToRadioOrBuilder

Packets/commands to the radio will be written (reliably) to the toRadio characteristic.
Once the write completes the phone can assume it is handled.
Protobuf type meshtastic.ToRadio
Link copied to clipboard
interface ToRadioOrBuilder : MessageOrBuilder
Link copied to clipboard
class User : GeneratedMessage, MeshProtos.UserOrBuilder

Broadcast when a newly powered mesh node wants to find a node num it can use
Sent from the phone over bluetooth to set the user id for the owner of this node.
Also sent from nodes to each other when a new node signs on (so all clients can have this info)
The algorithm is as follows:
when a node starts up, it broadcasts their user and the normal flow is for all
other nodes to reply with their User as well (so the new node can build its nodedb)
If a node ever receives a User (not just the first broadcast) message where
the sender node number equals our node number, that indicates a collision has
occurred and the following steps should happen:
If the receiving node (that was already in the mesh)'s macaddr is LOWER than the
new User who just tried to sign in: it gets to keep its nodenum.
We send a broadcast message of OUR User (we use a broadcast so that the other node can
receive our message, considering we have the same id - it also serves to let
observers correct their nodedb) - this case is rare so it should be okay.
If any node receives a User where the macaddr is GTE than their local macaddr,
they have been vetoed and should pick a new random nodenum (filtering against
whatever it knows about the nodedb) and rebroadcast their User.
A few nodenums are reserved and will never be requested:
0xff - broadcast
0 through 3 - for future use
Protobuf type meshtastic.User
Link copied to clipboard
interface UserOrBuilder : MessageOrBuilder
Link copied to clipboard
class Waypoint : GeneratedMessage, MeshProtos.WaypointOrBuilder

Waypoint message, used to share arbitrary locations across the mesh
Protobuf type meshtastic.Waypoint
Link copied to clipboard
interface WaypointOrBuilder : MessageOrBuilder

Properties

Link copied to clipboard
open val descriptor: Descriptors.FileDescriptor

Functions

Link copied to clipboard
open fun registerAllExtensions(registry: ExtensionRegistry)
open fun registerAllExtensions(registry: ExtensionRegistryLite)